﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Test_API
{
    static class Library
    {
        public static string getTitle()
        {
            string title = @"ARISTOTLE		Aristotle (384 BC - 322 BC)
BURROUGHS		Edgar Rice Burroughs (1875-1950)
DICKENS		Charles Dickens (1812-1870)
DOYLE		Sir Arthur Conan Doyle (1859-1930)
EMERSON		Ralph Waldo Emerson (1803-1882)
HAWTHORNE		Nathaniel Hawthorne (1804-1864)
IRVING		Washington Irving (1783-1859)
JEFFERSON		Thomas Jefferson (1743-1826)
KANT		Immanuel Kant (1724-1804)
KEATS		John Keats (1795-1821)
MILTON		John Milton (1608-1674)
PLATO		Plato (circa 428-c. 347 BC)
POE		Edgar Allan Poe (1809-1849)
SHAKESPEARE		William Shakespeare (1564-1616)
STEVENSON		Robert Louis Stevenson (1850-1894)
TWAIN		Mark Twain (Samuel Clemens) (1835-1910)
WILDE		Oscar Wilde (1854-1900)";
            string[] lines = title.Split(Environment.NewLine.ToCharArray(), StringSplitOptions.RemoveEmptyEntries);
            string titleText = lines.ToList().randomElement();
            if (titleText.Trim().Length == 0)
                titleText = "[No title defined]_"+ExtenstionMethods.randomNumber(250);
            return titleText + ". Time: " + DateTime.Now.ToString("r");
        }

        public static string getDescription()
        {
            string deutschLorelIpsum = @"Der Text selbst ist kein richtiges Latein, schon das erste Wort „Lorem“ existiert nicht. Dennoch erkennt man im Text eine Reihe lateinischer Wörter, die aus dem sehr ähnlichen Absatz 1.10.32 bis 1.10.33 aus Ciceros De finibus bonorum et malorum[1]  stammen, das im Mittelalter weithin bekannt war:[2]

    „Neque porro quisquam est, qui dolorem ipsum, quia dolor sit, amet, consectetur, adipisci velit […]“
    (Ferner gibt es auch niemanden, der den Schmerz um seiner selbst willen liebt, der ihn sucht und haben will, einfach, weil es Schmerz ist […]).

Als Platzhaltertext sollen Lorem-ipsum-Passagen seit dem 16. Jahrhundert bei Setzern üblich gewesen sein. Seit den 1960er Jahren verwendet die Firma Letraset sie zur Demonstration der Gestalt verschiedener Schrifttypen. Auch sonst finden sich viele leicht voneinander abweichende Varianten dieses Textes.

Wurden früher die wenigen Zeilen von „Lorem ipsum“ im Blindtext fortlaufend wiederholt, so dient heute der aufgefundene Text von Cicero als Basis vieler Lorem-ipsum-Generatoren, die darauf aufbauend längere Abschnitte erzeugen. Die Begriffsfolge ist so weithin üblich, dass viele Desktop-Publishing-Programme einen Menüpunkt für Blindtext haben, der eine Sequenz erzeugt, die mit „Lorem ipsum“ beginnt. Außerdem wird heute die Begriffsfolge „Lorem ipsum“ in der elektronischen Druckaufbereitung erkannt und eine Warnmeldung ausgegeben, damit eine Publikation mit verbliebenem Blindtext nicht versehentlich in den Druck geht. Für den Textsatz mit LaTeX gibt es Ergänzungspakete,[3] auch Microsoft Word hat eine Funktion[4] zur Erzeugung des Blindtextes eingebaut.";

            string englishLorelIpsum = @"Since the dawn of time, there has been a process to developing web presentations - you start with a design, get it approved by whoever's sitting on the money, then you build from that. It's more than just tradition, it's the way it's done. To question the process publicly would brand you a renegade, a free thinker... a troublemaker. That can cost you gigs. So, you do it the way it's always been done. Conform and survive. Cash them checks.

In these presentations, you often require 'dummy text' to fill out the places where actual text will go once the money men buy it from some other overpriced consultant. Historically, this dummy text is a block of fake latin boilerplate that begins with 'Lorem Ipsum'. It fills up the space with sentences and paragraphs, but it's been used so long by so many that - like banner ads and tv commercials - people just gloss over it without paying any attention to the contents. Herein lies your opportunity to subvert the timeless standard.";

            string source = ExtenstionMethods.randomNumber(4) %3 == 0 ? deutschLorelIpsum : englishLorelIpsum;
            string sample = source.Substring(ExtenstionMethods.randomNumber(source.Length));
            return sample;
        }

        public static string getWord()
        {
            string word = Library.getTitle().Split(' ').FirstOrDefault();
            return word.Replace('\t', '-');
        }
    }
}
